package org.jeecg.modules.paycenter.enums;

import org.apache.commons.lang.StringUtils;
import org.jeecg.common.exception.JeecgBootException;

import java.util.HashMap;
import java.util.Map;

/**
 * 支付源类型 1账户余额 2平台垫付 3经纪人垫付 4账期
 */
public enum PaySourceEnum {
    ACCOUNT_PAY("1"), //账户余额
    PLATFORM_PAY("2"), //平台垫付
    AGENT_PAY("3"), //经纪人垫付
    PERIOD_PAY("4"), //账期
    ;
    public final String value;
    private static Map<String, PaySourceEnum> _paySourceMap = new HashMap<>();

    PaySourceEnum(String paySource) {
        this.value = paySource;
    }

    static {
        for (PaySourceEnum item : PaySourceEnum.values()) {
            _paySourceMap.put(item.value, item);
        }
    }

    public static PaySourceEnum getPaySourceEnum(String source) {
        if (StringUtils.isEmpty(source)) {
            throw new JeecgBootException("支付源错误");
        }
        PaySourceEnum paySourceEnum = _paySourceMap.get(source);
        if (paySourceEnum == null) {
            throw new JeecgBootException("支付源错误");
        }
        return paySourceEnum;
    }
}
